package TestesDoModel;

import model.ListaDeReproducao;
import model.Usuario;

import org.junit.*;

public class TestaUsuario {
	Usuario usuario;
	char[] senha1;
	ListaDeReproducao lista1;
	ListaDeReproducao lista2;
	
	@Before
	public void criaUsuario(){
		senha1 = new char[01234];
		usuario = new Usuario("Marcos", "marcos@gmail.com", senha1, "Samba");
		lista1 = new ListaDeReproducao("CPM 22");
		lista2 = new ListaDeReproducao("Jota Quest");
	}
	
	@Test
	public void testaMetodosModificadores(){
		Assert.assertEquals("Nome errado", "Marcos", usuario.getNome());
		usuario.setNome("Jorge");
		Assert.assertEquals("Nome errado", "Jorge", usuario.getNome());
		Assert.assertEquals("Email errado", "marcos@gmail.com", usuario.getEmail());
		Assert.assertEquals("Senha errada", senha1, usuario.getSenha());
		char[] senha2 = new char[56789];
		usuario.setSenha(senha2);
		Assert.assertEquals("Senha errada", senha2, usuario.getSenha());
		Assert.assertEquals("Genero errado", "Samba", usuario.getGenero());
		usuario.setGenero("Rock");
		Assert.assertEquals("Genero errado", "Rock", usuario.getGenero());
	}
	
	@Test
	public void testaGetMyPlaylist() throws Exception{
		usuario.getMyPlayLists().addListaDeReproducao(lista1);
		usuario.getMyPlayLists().addListaDeReproducao(lista2);
		Assert.assertEquals("Lista de Reproducao errada", lista1, usuario.getMyPlayLists().buscaListaDeReproducao("CPM 22"));
		Assert.assertEquals("Lista de Reproducao errada", lista2, usuario.getMyPlayLists().buscaListaDeReproducao("Jota Quest"));
	}
	
	@Test
	public void testaGetFavoritos(){
		
	}
	

}
